// 路由配置数据
export interface MAINROUTE {
  path?: string;
  allPath?: string;
  project?: 'clink-business' | 'clink-customer';
  page?: string;
  module?: string;
  component?: MAINROUTE[];
  childrens?: MAINROUTE[];
}
// 组件状态
export enum AppStatus {
  'NOT_LOADED',
  'LOADING_SOURCE_CODE',
  'NOT_BOOTSTRAPPED',
  'BOOTSTRAPPING',
  'NOT_MOUNTED',
  'MOUNTING',  // 加载中
  'MOUNTED',  // 加载完成
  'UPDATING',
  'UNMOUNTING',
  'UNLOADING',
  'SKIP_BECAUSE_BROKEN',
  'LOAD_ERROR',
}

// 缓存方式
export enum AppReloadType {
  'NO_CACHE' = 'NO_CACHE', // 不使用任何缓存
  'KEY_CACHE' = 'KEY_CACHE', // 根据缓存key
}

// 父组件传给子组件的数据
export interface AppPropObject {
  [key: string]: any;
  singleSpa?: any;
  systemData: { [key: string]: any };
  data: any;
}
